Software applications are typically managed independently from the computer system hardware and on which they depend. In addition, multiple software applications may share software and hardware resources. The lack of integrated management tools across software applications, operating systems, and computer system hardware commonly results in several problems. For example, hardware is often over-provisioned to mitigate possible capacity bottlenecks, resulting in wasted hardware resources. The serviceability and predictability of software applications may be negatively affected by unexpected capacity bottlenecks in the underlying software and hardware. Further still, lack of integrated management tools may result in an inability to understand the required adjustments to capacity related items.